package com.sz.mes.excel.model;

import java.util.Date;
import java.lang.Double;
import java.math.BigDecimal;

import com.alibaba.excel.enums.BooleanEnum;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.diboot.core.util.D;
import com.diboot.file.excel.BaseExcelModel;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotNull;

import com.sz.mes.entity.SaleOrder;

/**
 * 销售订单 导出model定义
 *
 * @author hem
 * @version 1.0
 * @date 2024-01-10
 * Copyright © szhs
 */
@Getter
@Setter
@ExcelIgnoreUnannotated
public class SaleOrderExportModel extends BaseExcelModel {


    /**
     * 料品财务分类
     */
    @ExcelProperty(value = "料品财务分类")
    private String materialFinancial;


    /**
     * 料号
     */
    @ExcelProperty(value = "料号")
    private String productNum;


    /**
     * 客户简称
     */
    @ExcelProperty(value = "客户简称")
    private String clientName;


    /**
     * 业务负责人
     */
    @ExcelProperty(value = "业务负责人")
    private String businessManager;


    /**
     * 订单号
     */
    @ExcelProperty(value = "订单号")
    private String orderNum;


    /**
     * 订单行号
     */
    @ExcelProperty(value = "订单行号")
    private String orderRow;


    /**
     * 料品规格
     */
    @ExcelProperty(value = "料品规格")
    private String specification;

    /**
     * 料品名称
     */
    @ExcelProperty(value = "料品名称")
    private String productName;

    /**
     * 销售订单行.料品.料品.库存主单位
     */
    @ExcelProperty(value = "销售订单行.料品.料品.库存主单位")
    private String unit;

    /**
     * 订单数量
     */
    @ExcelProperty(value = "订单数量")
    private Integer orderQuantity;


    /**
     * 下单日期
     */
    @DateTimeFormat(D.FORMAT_DATE_Y4MD)
    @ExcelProperty(value = "下单日期")
    private Date buyDate;


    /**
     * 合同要求日期
     */
    @DateTimeFormat(D.FORMAT_DATE_Y4MD)
    @ExcelProperty(value = "合同要求日期")
    private Date contractDemandDate;


    /**
     * 未出货数量
     */
    @ExcelProperty(value = "未出货数量")
    private Integer unshippedGoodsQuantity;


    /**
     * 累计出货数量
     */
    @ExcelProperty(value = "累计出货数量")
    private Integer totalShipmentQuantity;


    /**
     * 客户采购员
     */
    @ExcelProperty(value = "客户采购员")
    private String clientPurchasePerson;


    /**
     * 客户使用人
     */
    @ExcelProperty(value = "客户使用人")
    private String clientUser;


    /**
     * 客户物料号
     */
    @ExcelProperty(value = "客户物料号")
    private String clientProductNum;


    /**
     * 客户图号
     */
    @ExcelProperty(value = "客户图号")
    private String clientPicNum;


    /**
     * 客户工厂代码
     */
    @ExcelProperty(value = "客户工厂代码")
    private String clientFactoryCode;


    /**
     * 客户库位
     */
    @ExcelProperty(value = "客户库位")
    private String clientLocation;


    /**
     * 物料描述
     */
    @ExcelProperty(value = "物料描述")
    private String materialDescription;


    /**
     * 收货地址
     */
    @ExcelProperty(value = "收货地址")
    private String deliveryAddress;


    /**
     * 订货客户.客户名称
     */
    @ExcelProperty(value = "订货客户.客户名称")
    private String customerName;


}
